tab.path <- "results/table/"
tab.name <- "app_tab_e02.tex"


db_plac <- read.csv("data/locs_romanroads.csv") #Locations along Main Roads

Re$placebomarch <- Re$G_UNIT %in% db_plac$G_UNIT


yvars <- c("par.onl.sh")

fcontrols <- paste0("dpost:", controls)

Re.new <- subset(Re, !treat_10) 
vars <- c( "factor(dpost)*factor(placebomarch)",
       "factor(dpost)" ,"factor(placebomarch)")
outvars <- c( "factor.dpost.TRUE.factor.placebomarch.TRUE",
       "^factor.dpost.TRUE$" ,"^factor.placebomarch.TRUE$")
labvars <- c("DPost X `Placebo' March","DPost", "`Placebo' March")

m1  <- felm(as.formula(RegFor( y = yvars[1] , x = c(vars) ,
      FE = "county" , IV="0", clust = "klust" )),
           data= Re.new)
m2 <- felm(as.formula(RegFor( y = yvars[1] , x = c(vars, fcontrols) ,
      FE = "county" , IV="0", clust = "klust" )),
           data= Re.new)
m3 <- felm(as.formula(RegFor( y = yvars[1] , x = c(vars, fcontrols) ,
      FE = "county" , IV="0", clust = "klust" )),
           data= subset(Re.new, year %in% c(1912, 1914)))
m4 <- felm(as.formula(RegFor( y = yvars[1] , x = c(vars, fcontrols) ,
      FE = "county" , IV="0", clust = "klust" )),
           data= subset(Re.new, year %in% c(1911,1912, 1914)))
m5 <- felm(as.formula(RegFor( y = yvars[1] , x = c(vars, fcontrols) ,
      FE = "county" , IV="0", clust = "klust" )),
       data= subset(Re.new, year %in% c(1911,1912, 1913, 1914) & (pop < 15000 & (dist.roads <= 2 | treat_10 == 1))))
getwd()
regstoadd <- list(m1,m2, m3,m4, m5 )

MSd <- function(variable){
  x1 <- round(mean(variable, na.rm = TRUE), 2)
  x2<-  round(sd(variable, na.rm = TRUE), 2)
  return(c(x1,x2))
}

Stats <- rbind(MSd(Re[,yvars[1]]),
  MSd(Re[,yvars[1]]) ,
  MSd(Re[,yvars[1]]) ,
  MSd(Re[Re$year %in% c(1912, 1914),yvars[1]]),
  MSd(Re[Re$year %in% c(1911, 1912, 1914),yvars[1]]),
  MSd(Re[Re$year %in% c(1911, 1912, 1914) & Re$pop < 10000 ,yvars[1]])
)
####OUT
add.lines <- list(AddLines( 7, "County FE", rep(LMc("Yes"),5)),
                  AddLines( 7, "Incl. 1913", c(rep(LMc("Yes"),2), c(LMc("No"), LMc("No"), LMc("Yes")))),
                  AddLines( 7, "Incl. 1912", c(rep(LMc("Yes"),2), c(LMc("No"), LMc("Yes"), LMc("Yes")))),
                  AddLines( 7, "Controls", c(LMc("No"),  rep(LMc("Yes"),4))),
                  AddLines( 7, "Pop under 15k", c(rep(LMc("No"),4), LMc("Yes"))),
                  AddLines( 7, "Within 2~km of roads ", c(rep(LMc("No"),4), LMc("Yes"))),
                  AddLines( 7, "Mean dep. var." , Stats[,1] ),
                  AddLines( 7, "Sd dep. var." , Stats[,2] )
                 )

fileConn<-file(paste0(tab.path,tab.name))
print(fileConn)
writeLines(stargazer(regstoadd,
                     float = FALSE ,
                     keep= outvars,
                     order = outvars ,
                     covariate.labels= labvars ,
                     star.cutoffs = c(0.10, 0.05, 0.01) ,
                     digits.extra = 0,
                     multicolumn=F,#
                     #column.sep.width="10pt",
                     dep.var.caption = paste("Share of Local Electors" ),
                     dep.var.labels.include = F,
                     font.size = "footnotesize",
                     omit.table.layout = "n",
                     align =T,
                     add.lines = add.lines,
                     digits = 3,
                     intercept.top = T,
                     intercept.bottom = F,
                     keep.stat = c("rsq" , "n") ,
                     omit.stat = c("res.dev","ser") ),
           fileConn)
close(fileConn)
rm(list=
    setdiff(ls()[sapply(ls(), function(x) any(class(get(x)) == 'data.frame'))],
    c("Re","Ind")))